package com.mowh.gof23.behavioral.patterns.visitor;

import java.util.Iterator;

/**
 * @author mowh1gd
 * @create 2023/10/17 17:46
 */
// Entry是原有复杂数据结构(递归composite)，本身不具有对数据的操作功能（如修改、读取、统计等），现通过Element接口增加visitor功能，子类负责实现。
public abstract class Entry implements Element{
    public abstract String getName();
    public abstract int getSize();

    public Entry add(Entry entry) throws FileTreatmentException {
        throw new FileTreatmentException();
    }
    public Iterator iterator() throws FileTreatmentException {
        throw new FileTreatmentException();
    }

    @Override
    public String toString() {
        return getName() + "(" + getSize() + ")";
    }
}
